// ============================== 导入依赖 ============================== //

import CORE from '@/CORE'

// ============================== 导出简易弹窗 ============================== //

export default {
  // —————————————————————————————— 双向绑定 —————————————————————————————— //

  visible: { type: Boolean, default: false }, // 弹窗可见 (以 v-modal="visible" 或 v-modal="obj.visible" 的方式使用)

  // —————————————————————————————— 全屏属性 —————————————————————————————— //

  fullScreen: { type: Boolean, default: false }, // 是否为全屏弹窗

  // —————————————————————————————— 宽度属性 —————————————————————————————— //

  width: { type: [Number, String], default: null }, // 弹窗宽度
  fullWide: { type: Boolean, default: false }, // 是否为全屏宽度
  fullWidth: { type: String, default: '94vw' }, // 全屏宽度

  // —————————————————————————————— 高度属性 —————————————————————————————— //

  height: { type: [Number, String], default: null }, // 弹窗高度
  fullHigh: { type: Boolean, default: false }, // 是否为全屏高度

  // —————————————————————————————— 尺寸属性 —————————————————————————————— //

  ...CORE.WEB.BASE.SIZE,
  large: { type: Boolean, default: false }, // 是否为大号尺寸
  huge: { type: Boolean, default: false }, // 是否为巨大号尺寸

  // —————————————————————————————— 弹窗属性 —————————————————————————————— //

  top: { type: [Number, String], default: 60 }, // 距顶高度
  center: { type: Boolean, default: false }, // 是否为标题和底部居中
  modalClass: { type: String, default: '' }, // 弹窗样式类

  noFooter: { type: Boolean, default: false }, // 隐藏底部
  noConfirm: { type: Boolean, default: false }, // 隐藏确定
  noCancel: { type: Boolean, default: false }, // 隐藏取消
  bgClose: { type: Boolean, default: false }, // 背景关闭

  confirm: { type: String, default: '确定' }, // 确定的文字
  cancel: { type: String, default: '取消' }, // 取消的文字

  confirmBtn: { type: Object, default: () => ({ type: 'primary' }) }, // 确定的按钮配置 (见 BtnCommon)
  cancelBtn: { type: Object, default: () => ({}) }, // 取消的按钮配置

  // —————————————————————————————— 标题属性 —————————————————————————————— //

  // 可用插槽 <template #title="{ title }">{{ title }}</template>
  title: { type: String, default: '详情' }, // 标题

  // —————————————————————————————— 原生属性 —————————————————————————————— //

  elProps: { type: Object, default: () => ({}) }, // el-modal 原生配置项
}
